using System;
using Newtonsoft.Json;

namespace ERP_SaaS_WinForm.生产工单_报工_工序.Process
{
    public class ProductionOrdersHandleCommand
    {
        // 基本排产参数（改为与后端大小写一致的属性名）
        [JsonProperty("productionOrdersId")]
        public int ProductionOrdersId { get; set; }
        
        [JsonProperty("plannedQuantity")]
        public int PlannedQuantity { get; set; }
        
        [JsonProperty("planStart")]
        public string PlanStart { get; set; }
        
        [JsonProperty("planEnd")]
        public string PlanEnd { get; set; }
        
        [JsonProperty("demandDate")]
        public string DemandDate { get; set; }
        
        [JsonProperty("remark")]
        public string Remark { get; set; }
        
        [JsonProperty("actualStart")]
        public string ActualStart { get; set; }
        
        [JsonProperty("actualEnd")]
        public string ActualEnd { get; set; }
        
        [JsonProperty("actualQuantity")]
        public int ActualQuantity { get; set; }
        
        // 工单进度字段
        [JsonProperty("productionOrdersProgress")]
        public int ProductionOrdersProgress { get; set; }
        
        // 状态更新字段
        [JsonProperty("state")]
        public int State { get; set; }

        // 接口校验要求的必填字段（从所选工单补齐）
        [JsonProperty("bom")]
        public string BOM { get; set; }
        
        [JsonProperty("type")]
        public string Type { get; set; }
        
        [JsonProperty("unit")]
        public string Unit { get; set; }
        
        [JsonProperty("version")]
        public string Version { get; set; }
        
        [JsonProperty("createBy")]
        public string CreateBy { get; set; }
        
        [JsonProperty("planNumber")]
        public string PlanNumber { get; set; }
        
        [JsonProperty("productCode")]
        public string ProductCode { get; set; }
        
        [JsonProperty("productName")]
        public string ProductName { get; set; }
        
        [JsonProperty("productType")]
        public string ProductType { get; set; }
        
        [JsonProperty("associatePlans")]
        public string AssociatePlans { get; set; }
        
        [JsonProperty("specificationModel")]
        public string SpecificationModel { get; set; }
        
        [JsonProperty("productionOrdersCode")]
        public string ProductionOrdersCode { get; set; }
        
        [JsonProperty("productionOrdersName")]
        public string ProductionOrdersName { get; set; }
        
        [JsonProperty("batch")]
        public string Batch { get; set; }
    }
}



